跳到主要内容

Chomsky 范式

阐述

上下文无关文法的每个规则是以下的一种:

  • ABCA\to BC(其中 B,CSB,C\ne S
  • AaA\to a
  • SεS\to\varepsilon

实例

性质

相关内容

可以将任意CFG转化为这种范式:

  1. 添加一个新的起始变量
  2. 去掉形如 AεA\to\varepsilon 的规则,并对所有 RuAvR\to uAv 的规则添加一条 AA 替换为空的规则
  3. 去掉形如 ABA\to B 的规则,并对所有 BuB\to u 的规则添加一条 AuA\to u 的规则
  4. 将形如 Au1u2...A\to u_1u_2... 的规则拆分成多条
    1. Au1A1,A1u2A2,,Ak2uk1ukA\to u_1A_1, A_1\to u_2A_2,\cdots,A_{k-2}\to u_{k-1}u_k
    2. 如果原本 uiu_i 是终结符,替换并添加 UiuiU_i\to u_i

参考文献